package com.gdawj.javabeans;

import java.util.Date;
import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.EntityListeners;
import javax.persistence.ManyToMany;
import javax.persistence.OneToMany;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;


@Entity
@EntityListeners({EtudiantTrace.class,EtudiantValidateur.class})
public class Etudiant extends Personne {

    private String photo;
    @Temporal(TemporalType.DATE)
    private Date dateNaissance=new Date();
    // lien vers la classe Promotion
    @ManyToMany(cascade=CascadeType.PERSIST)
    private List<Promotion> listePromotions;
    // lien vers la classe EtudiantCours
    @OneToMany(mappedBy="etudiant",cascade=CascadeType.PERSIST)
    private List<EtudiantCours> listeCours;


    public Etudiant()
    {
        System.out.println("Dans le constructeur de la classe Etudiant");
    }

    public String getPhoto() {
        return photo;
    }

    public void setPhoto(String photo) {
        this.photo = photo;
    }

    public java.util.Date getDateNaissance() {
        return dateNaissance;
    }

    public void setDateNaissance(java.util.Date dateNaissance) {
        this.dateNaissance = dateNaissance;
    }

    public List<EtudiantCours> getListeCours() {
        return listeCours;
    }

    public void setListeCours(List<EtudiantCours> listeCours) {
        this.listeCours = listeCours;
    }

    public List<Promotion> getListePromotions() {
        return listePromotions;
    }

    public void setListePromotions(List<Promotion> listePromotions) {
        this.listePromotions = listePromotions;
    }


}
